I. Les Données et la Nécessité des Paramètres
Rappelons la différence entre l'action et la donnée nécessaire à l'action.
Activité 1 : Identifier la Donnée
Pour la commande AVANCE, quelle est l'information (la **donnée**) que l'on doit obligatoirement indiquer pour que l'action soit exécutée ?
A) Le nombre de pas (la distance parcourue)
B) Le temps de calcul
C) Le nom de la tortue
Activité 2 : Le But du Paramètre
Si vous créez une procédure CARRE pour dessiner des carrés de différentes dimensions, que devrez-vous **préciser** lors de l'exécution ?
A) La couleur du crayon avant de tracer
B) La vitesse de la tortue
C) Le nombre de pas du côté (la dimension)
Activité 3 : La Nouvelle Syntaxe LOGO
Dans la définition de la procédure, comment indique-t-on que la procédure attend un paramètre (une donnée) lors de son appel ?
A) En utilisant le mot-clé DONNE
B) En ajoutant le symbole deux-points (:) devant le nom du paramètre (ex: :COTE)
C) En utilisant des guillemets (")
Activité 4 : Procédure Simple vs Paramétrée
La procédure POUR CARRE (ancienne version) ne dessinait qu'un seul type de carré. La procédure POUR CARRE :COTE peut dessiner plusieurs carrés. Comment appelle-t-on ce type de procédure ?
A) Procédure Simple
B) Procédure Interne
C) Procédure Paramétrée
Statut : 0 / 4 activités tentées.
II. Les Procédures Paramétrées
Les procédures paramétrées sont des primitives LOGO définies par l'utilisateur et qui nécessitent de leur fournir des données quand on essaie de les exécuter. Elles sont la clé pour rendre vos programmes flexibles et réutilisables.
1. Définition et Syntaxe (Source: image_9e2ea1.jpg)
Pour définir une procédure paramétrée, vous ajoutez les paramètres (noms des données attendues) après le nom de la procédure, chacun précédé du symbole deux-points (:).
POUR CARRE :COTE
REPETE 4 [ AV :COTE TD 90 ]
FIN
**Règles Importantes :**
- On ne laisse pas d'espace entre le deux-points (:) et le nom du paramètre (COTE).
- Le nom du paramètre est utilisé comme une variable à l'intérieur de la procédure (AV :COTE).
- Les noms des variables (paramètres) doivent être significatifs et doivent commencer par une lettre ou un souligné (_).
2. Exécution d'une Procédure Paramétrée
Pour exécuter la procédure, il faut fournir la valeur de la donnée (le nombre de pas, le nom, etc.) immédiatement après le nom de la procédure.
Exemple du Carré :
CARRE 10 # Trace un carré de côté 10
CARRE 50 # Trace un carré de côté 50
CARRE 100 # Trace un carré de côté 100
Exemple avec du Texte (Source: image_9e2ea1.jpg) :
POUR SALUER :NOM
ECRIS "Bienvenue
ECRIS :NOM
FIN
# Exécution :
SALUER "Marie
# Affiche : Bienvenue
# Affiche : Marie
III. Exercices Interactifs sur la Syntaxe
Vérifiez votre compréhension de la syntaxe des procédures paramétrées et de l'appel de données.
Exercice 1 : Syntaxe de Définition Correcte
Quelle ligne de code définit correctement une procédure nommée LIGNE qui prend la longueur L comme paramètre ?
A) POUR LIGNE "L
B) POUR LIGNE :L
C) DONNE "L 100
Exercice 2 : Utilisation Correcte du Paramètre
La procédure POUR CARRE :C est définie. Quelle est l'instruction correcte pour faire avancer la tortue de la longueur du côté ?
A) AV C
B) AV "C
C) AV :C
Exercice 3 : Appel Correct de Procédure
Pour exécuter la procédure POUR RECTANGLE :L :l, quelle est la commande d'appel correcte pour un rectangle de L=80 et l=30 ?
A) RECTANGLE 80 30
B) RECTANGLE :80 :30
C) DONNE "L 80 DONNE "l 30 RECTANGLE
Exercice 4 : Rôle du Deux-Points (:)
Quel est le rôle du symbole deux-points (:) devant le mot COTE dans le corps de la procédure (AV :COTE) ?
A) Définir la variable
B) Lire la valeur stockée dans la variable/paramètre
C) Indiquer une chaîne de caractères (texte)
Exercice 5 : Conséquence de l'Oubli
Si vous exécutez CARRE sans donner de paramètre, alors que la procédure est définie POUR CARRE :COTE, que se passe-t-il ?
A) LOGO renvoie un message d'erreur : CARRE a besoin d'un argument.
B) La tortue trace un carré de taille 1.
C) LOGO demande la valeur du paramètre dans la console.
Statut : 0 / 5 exercices interactifs tentés.
IV. Problèmes de Dessin (Procédures Paramétrées)
Créez les procédures demandées pour rendre vos dessins dynamiques et ajustables.
Problème 1 : Rectangle Variable
Écrivez la procédure POUR RECTANGLE :L :l qui dessine un rectangle. :L est la grande longueur et :l est la petite largeur.
Problème 2 : Polygone Général
Créez la procédure POUR POLY :N :C qui dessine n'importe quel polygone régulier. :N est le nombre de côtés et :C est la longueur du côté.
Rappel : L'angle de rotation est 360 / :N.
Problème 3 : Ligne de Points
Écrivez une procédure POUR POINTS :NB qui trace une ligne composée de :NB points (petits segments de 1) espacés de 5 pas.
Utilisez REPETE :NB [...].
Problème 4 : Spirale Paramétrée
Écrivez une procédure POUR SPIRALE :N qui utilise la commande REPETE :N [AV ... TD 90] pour dessiner une spirale. La longueur du segment doit augmenter de 5 à chaque itération (Astuce : utilisez une variable DONNE "C :C + 5).
Problème 5 : Maison Paramétrée
Utilisez les procédures CARRE :T et TRIANGLE :T pour créer la procédure POUR MAISON :T qui dessine une maison complète. Le côté du carré et du triangle doivent tous deux utiliser le paramètre :T pour être de la même taille.
Assurez-vous que le triangle se pose bien sur le carré (rotation avant de tracer le triangle).
Corrections des Problèmes de Dessin
Problème 1 : Correction RECTANGLE
POUR RECTANGLE :L :l
REPETE 2 [
AV :L TD 90
AV :l TD 90
]
FIN
# Appel :
RECTANGLE 120 50
Problème 2 : Correction POLYGONE
POUR POLY :N :C
DONNE "ANGLE 360 / :N
REPETE :N [
AV :C
TD :ANGLE
]
FIN
# Appels :
POLY 6 70 # Hexagone
POLY 8 30 # Octogone
Problème 3 : Correction LIGNE DE POINTS
POUR POINTS :NB
REPETE :NB [
AV 1
LC # Lève crayon
AV 5
BC # Baisse crayon
]
FIN
# Appel :
POINTS 15
Problème 4 : Correction SPIRALE PARAMÉTRÉE
POUR SPIRALE :N
DONNE "C 5
REPETE :N [
AV :C
TD 90
DONNE "C :C + 5 # Augmente la longueur du côté
]
FIN
# Appel :
SPIRALE 20
Problème 5 : Correction MAISON PARAMÉTRÉE
POUR MAISON :T
# 1. Dessiner le carré (les murs de la maison)
REPETE 4 [ AV :T TD 90 ]
# 2. Se placer en haut du carré pour dessiner le toit
TD 90
AV :T
TG 90
# 3. Dessiner le triangle (le toit)
REPETE 3 [ AV :T TD 120 ]
FIN
# Appel de la procédure
MAISON 80